package day05;

import java.util.Arrays;

public class ArrayDemo {
    public static void main(String[] args) {
        //3.数组的访问
        /*
        int[] arr=new int[3];//定义并初始化数组
        arr[0]=20;//给第一个元素赋值为20
        arr[1]=100;//给第二个元素赋值为100
        arr[2]=200;//给第三个元素赋值为200
        System.out.println(arr.length);//输出数组的长度
        System.out.println(arr[0]);//输出第一个元素的值
        System.out.println(arr[1]);//输出第二个元素的值
        System.out.println(arr[2]);//输出第三个元素的值
        System.out.println(arr[arr.length-1]);//输出数组最后一个元素的值
        //arr[3]=300;//运行时会发生数组下标越界异常   给第四个元素赋值为300    输入不报错   运行时报错
         */
        //4.数组的遍历/迭代（从头到尾挨个走一遍）
        /*
        int arr[]=new int[10];
        for (int i=0;i<arr.length;i++){
            //arr[i]=100; //给每个元素赋值为100
            arr[i]=(int)(Math.random()*100);//给每个元素赋值为0-99随机数
            System.out.println(arr[i]);
        }
         */
        //5.数组的复制
        /*
        //a:源数组
        //b:目标数组
        //6:目标数组的长度
        //  --若目标数组长度>源数组长度，则末尾补默认值
        //  --若目标数组长度<源数组长度，则将末尾的截掉
        int[] a={12,25,36,69,47};
        int[] b=Arrays.copyOf(a,6);//复制   最后加一个默认值0
        for (int i=0;i<a.length;i++){
            System.out.println(b[i]);
        }
        System.out.println("----------------");
        //数组的扩容(创建了一个更大的新的数组，并将数据复制进去了)
        a=Arrays.copyOf(a,a.length+1);//扩容
        for (int i=0;i<a.length;i++){
            System.out.println(a[i]);
        }
        a=Arrays.copyOf(a,a.length-1);
        for (int i=0;i<a.length;i++){
            System.out.println(a[i]);
         }
         */
    }
}
